package com.ruoyi.business.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ruoyi.business.domain.TRegisterInfo;
import com.ruoyi.business.vo.TRegisterBaseVo;
import com.ruoyi.business.vo.TRegisterInfoVo;
import com.ruoyi.business.vo.TRegisterXXQYVo;
import com.ruoyi.business.vo.export.ExportRegisterInfoVo;
import com.ruoyi.business.vo.export.ExportSignedFilesVo;
import com.ruoyi.business.vo.export.RegisterManualAllInfoVo;
import com.ruoyi.business.vo.export.RegisterManualInfoVo;
import org.apache.ibatis.annotations.Param;

import java.util.List;
import java.util.Map;

/**
 * 报名信息Mapper接口
 *
 * @author Tellsea
 * @date 2024-01-24
 */
public interface TRegisterInfoMapper extends BaseMapper<TRegisterInfo> {

    Page<TRegisterInfoVo> queryList(Page<?> page, @Param("entity") TRegisterInfoVo entity);

    Page<TRegisterInfoVo> queryIndexList(Page<?> page,  @Param("entity") TRegisterInfoVo entity);

    List<TRegisterInfoVo> queryList(@Param("entity") TRegisterInfoVo entity);

    TRegisterBaseVo queryByCount(@Param("entity") TRegisterBaseVo entity);

    Page<TRegisterBaseVo> queryByDept(Page<?> page, @Param("entity") TRegisterBaseVo entity);

    TRegisterInfoVo queryById(@Param("id") Long id);

    List<ExportRegisterInfoVo> getExportList(@Param("entity") TRegisterInfoVo entity);

    List<RegisterManualInfoVo> exportRegisterInfo(@Param("entity") TRegisterInfoVo entity);

    List<RegisterManualAllInfoVo> exportRegisterInfoAll(@Param("entity") TRegisterInfoVo entity);

    void updateCultureStatusForNoCulture();

    void insertCultureStatusForNoCultureLog();

    List<ExportSignedFilesVo> exportAllSignedFiles(@Param("entity") TRegisterInfoVo entity);

    Page<TRegisterXXQYVo> getXXQYRegisterList(Page<?> page);

    Page<TRegisterXXQYVo> getXxqyJyRegisterList(Page<?> page);

}
